翻訳と辞書
Words near each other
・ Meta Vannas
・ Meta Vaux Warrick Fuller
・ Meta Vidmar
・ Meta von Salis
・ Meta Štoka
・ Meta' language
・ Meta, Campania
・ Meta, Kentucky
・ Meta, Missouri
・ Meta- (chemistry)
・ META-4
・ Meta-advertising
・ Meta-analysis
・ Meta-Chloroperoxybenzoic acid
・ Meta-Chlorophenylpiperazine
Meta-circular evaluator
・ Meta-cold dark matter
・ Meta-communication
・ Meta-data management
・ Meta-discussion
・ Meta-DOB
・ Meta-DOT
・ Meta-emotion
・ Meta-epistemology
・ Meta-ethics
・ Meta-ethnicity
・ Meta-Functional Expertise
・ Meta-Historical
・ Meta-Hydroxynorephedrine
・ Meta-Hydroxyphenylhydracrylic acid


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Meta-circular evaluator : ウィキペディア英語版
Meta-circular evaluator

In computing, a meta-circular evaluator is a special case of a self-interpreter in which the existing facilities of the parent interpreter are directly applied to the source code being interpreted, without any need for additional implementation. Meta-circular evaluation is most common in the context of homoiconic languages.
The first appearance of the idea is in the dissertation of Corrado Böhm (1951).〔C. Böhm, Calculatrices digitales. Du déchiffrage des formules logico-mathématiques par la machine même dans la conception du programme, ''Ann. Mat. Pura Appl.'' (4) 37 (1954) 1-51; see also the discussion of Böhm's contribution in D. Knuth, L.T. Pardo, The early development of programming languages, reprinted in 〕 The definition of Lisp 1.5 (1961) by John McCarthy,〔Definition of EVALQUOTE in (Lisp 1.5 Programmer's Manual )〕 where the evaluation rules of Lisp are described as a Lisp program, had additional impact.
Meta-circular evaluation is discussed at length in section 4.1, titled (The Metacircular Evaluator ), of the
MIT university textbook ''Structure and Interpretation of Computer Programs (SICP)''. The core idea they present is two functions:
* ''Eval'' which takes as arguments an expression and an environment (bindings for variables) and produces either a primitive or a procedure and a list of arguments
* ''Apply'' which takes as arguments a procedure and a list of arguments to which the procedure should be applied and produces an expression and an environment
The two functions then call each other in circular fashion to fully evaluate a program.
==Ramifications==

Meta-circular implementations are suited to extending the language they are written in. They are also useful for writing tools that are tightly integrated with the programming language, such as sophisticated debuggers. A language designed with a meta-circular implementation in mind is often more suited for building languages in general, even ones completely different from the host language.

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Meta-circular evaluator」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.